package com.basic.contraller;

import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

public class LinkRedis {
    @Test
    public void  testJedisSingle(){
//        设置ip地址和端口
        Jedis jedis = new Jedis("192.168.159.130",6379);
//        设置数据
        jedis.set("name","王帅");
//        获取数据
        String name = jedis.get("name");
        System.out.println(name);
//        释放资源
        jedis.close();
    }

    @Test
    public  void testJedisPool(){
//        获得连接池配置对象，设置配置锁
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        //        设置最大连接数
        jedisPoolConfig.setMaxTotal(100);
//        最大空闲连接数
        jedisPoolConfig.setMaxIdle(30);
//        最小空闲个数
        jedisPoolConfig.setMinIdle(10);
//        获得连接池
        JedisPool jedisPool = new JedisPool(jedisPoolConfig,"192.168.159.130",6379);
//        获得核心对象
        Jedis jedis =null;
        try{
            jedis =jedisPool.getResource();
//            设置数据
            jedis.set("name","王帅");
//            获得数据
            String name = jedis.get("name");
            System.out.printf(name);

        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if (jedis != null){
                jedis.close();
            }
//           虚拟机关闭时 释放pool资源
            if (jedisPool!=null){
                jedisPool.close();
            }
        }
    }

}
